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

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

5
Як ви «переробите» на C ++?
Як я можу reallocв C ++? Здається, це відсутнє в мові - є newі deleteале ні resize! Мені це потрібно, оскільки, оскільки моя програма читає більше даних, мені потрібно перерозподілити буфер, щоб утримувати їх. Я не вважаю правильним варіантом deleteвведення старого вказівника та newстворення нового, більшого.

11
Отримання імені каталогу з імені файлу
У мене є ім'я файлу (C: \ folder \ foo.txt), і мені потрібно отримати ім'я папки (C: \ folder) у некерованому C ++. У C # я б зробив щось подібне: string folder = new FileInfo("C:\folder\foo.txt").DirectoryName; Чи існує функція, яку можна використовувати в некерованому C ++ для вилучення шляху з …
85 c++  file  directory 

8
Чи існує в C ++ тип даних "byte"?
Якщо існує, чи є файл заголовка для включення? Цей код видає помилку компіляції: #include <iostream> using namespace std; int main() { byte b = 2; cout << b << endl; return 0; }
85 c++ 

13
Чи можна визначити кількість елементів класу переліку c ++?
Чи можна визначити потужність c ++ enum class: enum class Example { A, B, C, D, E }; Я намагався використовувати sizeof, однак, він повертає розмір елемента перерахування. sizeof(Example); // Returns 4 (on my architecture) Чи існує стандартний спосіб отримати потужність (5 у моєму прикладі)?

4
Як здійснюється серіалізація об’єкта в C ++?
У мене є невелика ієрархія об’єктів, які мені потрібно серіалізувати та передавати через сокетне з’єднання. Мені потрібно обидві серіалізувати об’єкт, а потім десеріалізувати його залежно від типу. Чи є простий спосіб зробити це в C ++ (як у Java)? Чи існують зразки чи навчальні посібники для серіалізації C ++ в …

5
std :: array проти продуктивності масиву
Якщо я хочу побудувати дуже простий масив типу int myArray[3] = {1,2,3}; Чи слід використовувати std::arrayзамість цього? std::array<int, 3> a = {{1, 2, 3}}; Які переваги використання std :: array перед звичайними? Це ефективніше? Просто простіше керувати копією / доступом?
85 c++  c++11  stdarray 

22
Отримати ім’я файлу із шляху
Який найпростіший спосіб отримати ім’я файлу із шляху? string filename = "C:\\MyDirectory\\MyFile.bat" У цьому прикладі я повинен отримати "MyFile". без розширення.
85 c++  visual-c++ 

15
використовуйте std :: fill для заповнення вектора зі збільшенням чисел
Я хотів би заповнити vector<int>використання std::fill, але замість одного значення вектор повинен містити цифри у зростаючому порядку після. Я спробував досягти цього, повторивши третій параметр функції на одиницю, але це дало б мені лише вектори, заповнені 1 або 2 (залежно від положення ++оператора). Приклад: vector<int> ivec; int i = 0; …
85 c++  stl 

9
Як подолати попередження "'aclocal-1.15' відсутній у вашій системі"?
Я намагаюся запустити програму c ++ на github. (доступне за наступним посиланням https://github.com/mortehu/text-classifier ) У мене є mac, і я намагаюся запустити його в терміналі. Здається, я завантажив autoconf та automake, але не впевнений. Щоб запустити програму, я перейду до правильної папки в терміналі, а потім запущу ./configure && make …

4
c ++ 0x: правильний спосіб отримати лямбда-параметр як параметр за посиланням
Який правильний спосіб визначити функцію, яка отримує int->intлямбда-параметр за посиланням? void f(std::function< int(int) >& lambda); або void f(auto& lambda); Я не впевнений, що остання форма - це навіть юридичний синтаксис. Чи існують інші способи визначення лямбда-параметра?


7
чому обсяг пам'яті стека настільки обмежений?
Коли ви розподіляєте пам'ять у купі, єдиним обмеженням є вільна оперативна пам'ять (або віртуальна пам'ять). Це робить Gb пам'яті. То чому розмір стека настільки обмежений (близько 1 Мб)? Яка технічна причина заважає вам створювати по-справжньому великі об’єкти в стеку? Оновлення : Мої наміри можуть бути незрозумілими, я не хочу розподіляти …

5
Посилання на змінні члени як члени класу
На своєму робочому місці я бачу цей стиль, який широко використовується: - #include <iostream> using namespace std; class A { public: A(int& thing) : m_thing(thing) {} void printit() { cout << m_thing << endl; } protected: const int& m_thing; //usually would be more complex object }; int main(int argc, char* …
85 c++  reference 

13
Масиви стилів NumPy для C ++? [зачинено]
Зачинено. Це питання не відповідає вимогам щодо переповнення стека . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно було актуальним для переповнення стека. Закрито минулого місяця . Удосконалюйте це питання Чи існують бібліотеки C ++ (або C), які мають NumPy-подібні масиви з підтримкою нарізання, векторизованих операцій, …

6
Як перевірити, чи все ще працює потік std ::?
Як я можу перевірити, чи std::threadвсе ще працює a (незалежно від платформи)? У ньому бракує timed_join()методу, і joinable()він не призначений для цього. Я думав зафіксувати мьютекс за допомогою а std::lock_guardу потоці та використати try_lock()метод мьютексу, щоб визначити, чи він все ще заблокований (потік запущений), але мені здається це надмірно складним. …

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