Запитання з тегом «c++»

C ++ - мова програмування загального призначення. Спочатку він був розроблений як розширення до C і має подібний синтаксис, але зараз це зовсім інша мова. Використовуйте цей тег для запитань про код (який потрібно) зібрати за допомогою компілятора C ++. Використовуйте тег, що стосується версії, для питань, пов’язаних із конкретною стандартною редакцією [C ++ 11], [C ++ 14], [C ++ 17] або [C ++ 20] тощо.

3
Заміна компіляції прапорів для окремих файлів
Я хотів би використовувати глобальний набір прапорів для складання проекту, тобто в моєму файлі CMakeLists.txt верхнього рівня я вказав: ADD_DEFINITIONS ( -Wall -Weffc++ -pedantic -std=c++0x ) Однак для конкретного файлу (скажімо, "foo.cpp") у підкаталозі я хочу переключити прапорці компіляції на не застосовувати -Weffc ++ (включену комерційну бібліотеку я не можу …

5
Чи існує інтернет-ім’я деманглера для C ++? [зачинено]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 4 роки тому . Удосконаліть це питання Я отримую досить довгу і заплутану помилку посилання, і мені сподобається, якби я міг просто …
109 c++  demangler 


4
Як зробити повністю статично пов'язаний .exe з Visual Studio Express 2005?
Моє поточне бажане середовище C ++ - це безкоштовне та багато в чому чудове видання Microsoft Visual Studio 2005 Express. Час від часу я надсилаю релізні файли .exe іншим людям із приємними результатами. Однак нещодавно я зробив тривожне відкриття, що приємні результати ґрунтуються на більшій кількості удачі, яку я хотів …

7
Різні результати з плаваючою комою з увімкненою оптимізацією - помилка компілятора?
Наведений нижче код працює на Visual Studio 2008 з оптимізацією та без неї. Але він працює лише на g ++ без оптимізації (O0). #include <cstdlib> #include <iostream> #include <cmath> double round(double v, double digit) { double pow = std::pow(10.0, digit); double t = v * pow; //std::cout << "t:" << …
109 c++  optimization  g++  c++-faq 

5
LPCSTR, LPCTSTR і LPTSTR
Яка різниця між LPCSTR, LPCTSTRі LPTSTR? Чому нам потрібно це зробити, щоб перетворити рядок у змінну LV/ _ITEMструктура pszText: LV_DISPINFO dispinfo; dispinfo.item.pszText = LPTSTR((LPCTSTR)string);
109 c++  windows  visual-c++  mfc 

4
Що таке uint_fast32_t і чому його слід використовувати замість звичайних int та uint32_t?
Отже, причина typedef: ed примітивних типів даних полягає в тому, щоб абстрагувати представництво низького рівня та полегшити його розуміння ( uint64_tзамість long longтипу, який становить 8 байт). Однак є те, uint_fast32_tщо має те саме typedef, що uint32_t. Чи буде використання «швидкої» версії програму швидше?
109 c++  c  types 

6
(A + B + C) ≠ (A + C + B) і упорядкування компілятора
Додавання двох 32-бітних цілих чисел може призвести до переповнення цілого числа: uint64_t u64_z = u32_x + u32_y; Цього переповнення можна уникнути, якщо одне із 32-розрядних цілих чисел спочатку переведено на кастинг або додане до 64-бітного цілого числа. uint64_t u64_z = u32_x + u64_a + u32_y; Однак якщо компілятор вирішить змінити …

6
Що робить таке використання покажчиків непередбачуваним?
Зараз я навчаюсь вказівниками, і мій професор наводив цей приклад коду: //We cannot predict the behavior of this program! #include <iostream> using namespace std; int main() { char * s = "My String"; char s2[] = {'a', 'b', 'c', '\0'}; cout << s2 << endl; return 0; } Він написав …
108 c++  pointers 

6
Чому добре повернути 'вектор' з функції?
Будь ласка, врахуйте цей код. Цей тип коду я бачив уже кілька разів. words- локальний вектор. Як можливо повернути його з функції? Чи можемо ми гарантувати, що він не помре? std::vector<std::string> read_file(const std::string& path) { std::ifstream file("E:\\names.txt"); if (!file.is_open()) { std::cerr << "Unable to open file" << "\n"; std::exit(-1); } …

11
Помилка компіляції GCC з> 2 Гб коду
У мене величезна кількість функцій на загальну суму близько 2,8 Гб об'єктного коду (на жаль, немає можливості обійтись, наукові обчислення ...) Коли я намагаюся зв'язати їх, я отримую (очікувані) relocation truncated to fit: R_X86_64_32Sпомилки, які я сподівався обійти, вказавши прапор компілятора -mcmodel=medium. Усі бібліотеки, які пов'язані крім того, якими я …
108 c++  c  gcc  compiler-errors 

2
Швидше заповнення коду клангом
Я досліджую потенційні скорочення заповнення коду, використовуючи механізм заповнення коду Кланг. Нижче описаний потік - це те, що я знайшов у rtags від Anders Bakken. Одиниці перекладу аналізуються файлами моніторингу демонів щодо змін. Це робиться за допомогою викликаних clang_parseTranslationUnitта пов'язаних з ними функцій ( reparse*, dispose*). Коли користувач вимагає заповнити …


8
Як BLAS отримує такі екстремальні показники?
З цікавості я вирішив порівняти свою власну функцію множення матриць порівняно з реалізацією BLAS ... Я повинен був сказати найменше здивований результатом: Спеціальна реалізація, 10 випробувань множення матриці 1000x1000: Took: 15.76542 seconds. Впровадження BLAS, 10 випробувань множення матриці 1000x1000: Took: 1.32432 seconds. Для цього використовують одиничні точні числа з плаваючою …
108 c++  fortran 

3
'size_t' vs 'контейнер :: size_type'
Чи є різниця між size_tі container::size_type? Що я розумію, size_tце більш загальне і може бути використане для будь-яких size_types. Але container::size_typeоптимізовано під конкретні види контейнерів?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.