 
            
            
            
            
                28 Jan
                
                    2023
                
            
            
                28 Jan
                
                '23
                
            
            
            
        
    
                5:18 a.m.
            
        Klemens Morgenstern wrote:
Additionally, I feel some need for a library managing raw memory. It's quite common to just use vector<unsigned char>, but I find this incorrect, because it's typed. Raw memory doesn't have a type, which is why malloc returns void* and not unsigned char*.
Raw memory bytes do have a type, and it's `unsigned char`.
Thus a container type for a chunk of raw memory should also be included. I.e. something akin to a vector<void> if you will. Or like `bytes` in python.
You can in principle use std::byte for this, which is why it was added. Of course they had to ruin it by adding operations to it.