【初心者歓迎】C/C++室 Ver.106【環境依存OK】at TECH
【初心者歓迎】C/C++室 Ver.106【環境依存OK】 - 暇つぶし2ch1026:デフォルトの名無しさん
22/04/14 15:42:21.39 VkbtJkFZ.net
SIMDの勉強中で、下のようなことをしたいのですが、コンストラクタでエラーになります。
プリミティブ型をアライメント指定してnew,deleteするにはどうすればいいですか?
class MyClass {
public:
MyClass() : member(new (std::align_val_t{32}) int[1000]) {}
~MyClass() { delete[] member; }
int* member;
};

1027:デフォルトの名無しさん
22/04/14 16:34:45 4tVKG4Xu.net
コンパイラの吐き出すエラーは見た?
std::align_val_t を使えるのは C++17以降みたいだけど
そこらへんは大丈夫?

(※ ideone は C++14までやよね?)

1028:991
22/04/14 16:56:57.03 VkbtJkFZ.net
>>992
C++20です。
visual studio 2022でエラーC2956が出ます。
エラーのリンク先には構造体をnewしたい場合の対処法が書かれてます。
対処法:構造体の宣言時にalignas()でアライメント指定する。
プリミティブ型を宣言することができない(?)ので、この対処法では解決できませんでした。

1029:デフォルトの名無しさん
22/04/15 15:16:32 KM+JgYPL.net
うめ

1030:デフォルトの名無しさん
22/04/15 15:16:44 KM+JgYPL.net
埋め

1031:デフォルトの名無しさん
22/04/15 15:16:54 KM+JgYPL.net
ume

1032:デフォルトの名無しさん
22/04/15 15:17:03 KM+JgYPL.net


1033:デフォルトの名無しさん
22/04/15 15:17:12 KM+JgYPL.net
ウメ

1034:デフォルトの名無しさん
22/04/15 15:17:37 KM+JgYPL.net
生め

1035:デフォルトの名無しさん
22/04/15 15:17:46 KM+JgYPL.net
産め

1036:1001
Over 1000 Thread .net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 641日 1時間 25分 58秒

1037:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch